System for generating the fourier transform of a function

ABSTRACT

A system generates the Fourier transform of a real function z (t) which is known in a time interval 2T and which is given in this interval in the form of N samples at equal time intervals Theta , i.e., in the form Z (p Theta ) in which p is an integer such that T/ Theta &lt; OR = p &lt; OR = T/ Theta . The product z (p Theta )x cos pi /T Kp Theta or the product z (p Theta ) X sin pi /T Kp Theta generated in the system is computed for values of the integer K increasing from 1 inclusive to T/ Theta inclusive. The sum of these successive products, is computed; each of the sums represents a sampling point of the harmonic at frequency K/2T of the Fourier transform.

1191 [111 3,745,317 14 1 July 10, 1973 [54] SYSTEM FOR GENERATING THE FOURIER 3,514,585 5/1970 Norsworthy 235/181 TRANSFORM OF A FUNCTION 3,449,553 6/1969 Swan 235/181 X 3,544,775 12/1970 Bergland et a1 235/181 X [75] In entors: an e Berthler, Grenoble; 3,529,142 9/1970 Robertson 235/181 Jean-Marc Fauque, Gap; Jacques 3,526,832 9/1970 Post 235/181 X Max, Saint-Egreve, all of France 3,517,173 6/1970 Gilmartin et a1. 235/ 156 3,305,675 2/1967 Haase 235/197 Asslgneei comlfllssarlat A L Enel'gle 3,009,106 11 1961 Haase 235/181 x Atonuque, Pans, France Filed Ma 21 1971 FOREIGN PATENTS OR APPLICATIONS I y 1,473,006 2/1967 France 235/181 [21] Appl. No.: 145,689

Related US. Application Data Primary Examiner-Felix D. Gruber [63] Continuation-impart of Ser. No. 841,702, July 5, Attorney 'cameron' Kerkam Sutton 1969, abandoned.

[30] Foreign Application Priority Data [57] ABSTRACT July 30 1970 France 70161135 A System generates the Fourier hahsfmh a real May 26 1970 France 7019221 fhhctim 1 m which is khwh a time interval 2T and which is given in this interval in the form of N samples 52 us. 01 235/156, 235/150.53, 235/152, at equal time intervals 9, in the form Z P 9) in 235/197 324/77 B which p is an integer such that T/G s p s T/G. The 51 1m. (:1. G06f 7/38, 006g 7/19 Pwdlwt Z (P9115 cos 7r/T 9 or the Product 1 P X 58 Field 61 Search; 235/156 152 181 7r/T KP9 generated in the System is for 235,183 15151, 15152 l51'53;'324/'77 values of the integer K increasing from 1 inclusive to 77 T/B inclusive. The sum of these successive products, is computed; each of the sums represents a sampling 56] References Cited point of the harmonic at frequency K/ZT of the Fourier UNITED STATES PATENTS 3,586,843 6/1971 Sloane 235/156 7 Claims, 23 Drawing Figures Readouf Ora/i1 I f0re Z (/m'l v (Ana/09 l fnfe9rafor 1 I Mu/f/p/[er 4b i I 74/70/09 g Generator I Patented JulylO, 1973 3,745,317

' l0 Sheets- -Sheet 2 Patented July 10, 1973 3,745,317

10 Sheets-Sheet 4 FIGB F|G.9

Patented July 10, 1973 10 Sheets-Sheet 5,

Patente gd July 10, 1973 10 Sheets-Sheet 6 E RM ME Fund v ua Q Ei M E 10 Sheets-Sheet 8 Sign Patented July 10, 1973 9 #v Z lm Q 6 Cl m\ nWm rm w J? W AWN T 1 mm W M w WB C m m B 0 C m W r OL w FIG. 20

Patented Jul 10,1973 3,745,317 v 10 Sheets-Sheet f I I (t) I v I Binary Con Ziggy" -5TOF mu/h oller ml //0 (lac/( 78 A B I 5' B Siqn A 59 ABL #5 A c cumu afar ll. ll

DA converler 7- Patented JuIy'lO, 1973 10 Sheets-Sheet 1O xtsu AQ E

F l l I I I I I l |lL- SYSTEM FOR GENERATING THE FOURIER TRANSFORM OF A FUNCTION CROSS REFERENCE This application is a continuation in part of US. Pat. application Ser. No. 841,702 filed July 15, 1969, now abandoned.

BACKGROUND AND SUMMARY OF THE INVENTION This invention relates to equipment for generating the Fourier transform of a function, suitable for use in conjunction with correlators in order to analyze an energy spectral density.

It is an object of the invention to provide improved equipment for generating the Fourier transform of a real function known by its physical representation; it is another object to provide equipment which is adapted to process signals over a wide spectrum band and which is simple in construction.

According to an aspect of the invention, there is provided a system for generating the Fourier transform of a real function z (t) which is known in an interval in the form of data sampled at N points equally spaced by the interval in the form Z(p9) in which p is an integer such that T/@ s p s T/O, comprising multiplier for selectively forming the O in of z(p6) and cos 1r/T KpO for values of the integer K increasing from I inclusive to TIG inclusive and the product of z(p6) and sin a-r/T K 16 for values of the integer K increasing from 1 inclusive to T/O inclusive and an integrator for summation of the successive products, each of the sums representing a sampling point associated with the frequency K/ZT of the Fourier transform wherein to obtain the function cos qr/TlKpG, the function cos2/T1rt is sampled for N points of the interval 2T which are spaced by the interval 6 and UK of these sampled values is sampled. A device of the above type may cooperate with a realtime correlator, for instance of the type described in US. Pat. No. 3,555,258, for automatically providing the automatic analysis of an energy spectral density.

BRIEF DESCRIPTION OF THE DRAWINGS The invention will be more readily understood from the following description and accompanying drawings, which are of course given solely by way of example.

FIGS. 1 to 4 of the drawings show the corresponding time and spectral windows respectively without weighting (FIGS. 1 and 2) and with weighting of the recent Fauque-Berthier type (FIGS. 3 and 4) for determining the Fourier transform of a correlation function.

FIG. 5 represents the comparison of two types of weighting and without weighting.

FIG. 6 shows the Fourier transform of a sampled function.

FIG. "7 shows three cosine functions respectively for values of K equal to l, 2 and 3.

FIGS. 8 and 9; and I and II respectively illustrate the application of the method according to the invention to the specific case of an auto-correlation function and a cross-correlation function (for a definition of the auto-correlation and cross-correlation functions reference may be had to French Pat. No. 1,473,006).

FIG. I2 diagrammatically illustrates a device according to an embodiment of the invention for generating the Fourier transform of a function known by its physical representation.

FIGS. 13, M and 15 are representations of various components illustrated in block form in FIG. 12, namely, the multiplier, the cosine or sine function generator and the control unit for this generator.

FIGS. I6, 17 and 18 show modified embodiment of the read-out of the cosine function.

FIG. 19 is a simplified block diagram of a digitally working embodiment of the device for forming the Fourier transform of a function.

FIG. 20 is a simplified block diagram of the cosine function sample generator of the embodiment of FIG. 1.

FIG. 21 is a block diagram of a sample generator suitable for use in the device of FIG. 19 when the function is available in analog form.

FIG. 22 is a block diagram of the integrating multiplier of the device of FIG. 19, and

FIG. 23 is a simplified block diagram of a spectral analyser comprising a correlator and a device for producing the Fourier transform.

The invention will now be described with particular reference to the generation of the Fourier transform of a function known by its physical representation, more particularly for automatic analysis of the spectral density.

It should first be pointed out that the analysis of an energy spectral density is a problem which has numerous applications, of which the main ones are accurate analysis of vibration phenomena and noise analysis.

To solve problems of this type there are at present two types of instrument available An ordinary heterodyne spectral density analyser, which has the serious disadvantage that it is not a realtime instrument. To integrate the measurement over a time T,, the operation must be repeated for each point of the spectrum, so that to obtain N points of the spectrum the measuring time must be greater than the product N, T also, in this case, the entire signal to be precessed must be stored beforehand.

A pulse-compression spectral density analyser, which'although it may be considered as a real time instrument is limited by the capacity of the memory used for the time compression, since it generally does not allow a sufficient slice T, of the signal to be studied. This instrument has to be combined with a relatively complex digital integrator which makes it much more expensive. Also, as a result of its construction, this instrument is limitedas regards frequency and cannot process signals having a spectrum extending beyond some thousands Hz.

In contradistinction thereto, the invention provides real-time analysis of the spectral density over a time T, of any magnitude; signals can be processed in a much wider band (e.g. from 0 to 4 MHz), and this band can be extended because it is limited solely by present-day performances of switching transistors (in the embodiment concerned, these performances have voluntarily been taken as the limit so that these switching transistors can be used in very simple circuits). The simplicity of design results in an analyser which is much cheaper than the analysers of the above-mentioned two types which are at present available.

Before explaining the invention in detail, the main properties of Fourier transforms will be given, since they will be useful for an understanding of the invention.

It will be assumed that a real function (t) is known not by its mathematical formulation but by its physical representation for values of the variable t ranging between -T and +T.

This function will initially be assumed to have a value of zero for any value of the variable outside the interval T, +T.

A function of this type admits of a Fourier transform denoted by Z(f) and defined by the formula:

Since z(t) is zero outside the interval (T, +T), equation (1) can be written as follows:

7 f T t dt T T Z(f)=f z(t) cos 21rftdtjf 20 Sin 21mm Generally, therefore, Z(f) is a complex function of the variablefcomprising a real part (in phase):

and an imaginary part (in quadrature):

T u 1, =f z i 5111 2mm (5) An amplitude spectrum A.( f) (f)] 'z(f)] and a phase spectrum (f) Arc s (L (j)/ U) can also be defined.

It is known that Z(f), which is the frequency spectrum of a physical function Z(t), has by its nature a limited spectrum, because the pass-band of any real process is limited. It will therefore be assumed that F is the frequency so that for lfl F Z(f) is zero (or less than a predetermined value 6, which may be as small as desired).

Generally, and according to the definition given above, Z(f) is a function offwhich is zero outside the interval F,,, +F In practically every case, it is unnecessary to know the spectrum 20) continuously; on the contrary, it is sufficient to know just the values of Z(f) for discrete values of the variable f.

We therefore have instead of-Z(f) a series of values Z(O), Z(f Z(2j},), Z(Kf .Z(pf,,) with inte- We may therefore write the following for any value of y; the Dirac function or distribution may be represented by a vertical line of zero width and infinite height, of finite and non-zero area.

If the function (t) is known in the interval T, +T, it is unnecessary to try to obtain the spectrum with a definition better than l/2T as regards the frequency.

We may therefore take f0 =l/2T, and hence The following remarks will be concerned with the determination of The remarks which will be made concerning the real part of Z(f) will be readily transferable to the imaginary part of Z(f).

Having dealt with these general features of Fourier transforms, we shall now pass to the calculation of the Fourier transform. Since, by definition,

=(f) =f (t) cos 21rftdt we also have:

We must therefore caculate 'I f z(t) cos 21rKf tdt.

For this purpose, (t) must be multiplied by the function cos 2 1r Kfl, t, and then this product must be integrated from T to +T, which is the interval within which z(t) is known.

This operation will be repeated for the various values of K from 0 to F /j}.

To this end, the function z(t) must be stored and the most convenient method is to store the function z(t) after sampling, i.e., have z(t) defined by a series of point values mG,(m-l)9,...K(9),...29,G,o,9 26,...K6...(m1)6,...m6 m being an integer between 0 and T/G (as will be seen hereinafter, to perform the invention the values of z(t) at each of these times are stored either digitally, e.g. in core or bistable stores, or in analog form, e.g. as capacitor charges). The function z(t) is therefore represented by a series of values z(-m9), z(-KG), z(6), 2(0), 2(6), z(l(6), 2(m9).

Shannon s theorem (some explanations of which will be given below) shows that to enable these samples to reconstitute the function z(t) it is only necessary for the sampling interval 9 to be such that 9 l/2F We may now therefore assume that instead of z(t) we have The meaning ofp T/@ or p T/G is obviously that p is an integer between A and A, A being the integer immediately below T/G.

It is proved (as explained below) that if the function z(t) is known by z*(t), we shall have an exact value of R (Kfl) by making We have seen that the lowest value that was possible for f0 was f0 l/2T; and hence In other words, to have the exact value of z(t) cos 2 1r K/2Tl dt, it is only necessary to operate from the function z(t) sampled in accordance with Shannons sampling theorem, by multiplying each sample of z*(t) by the corresponding sample of cos 2 1r l(/2T t, i.e., by multiplying each value of z(p6) by the value of the cosine function at the time p9, and by forming the sum of these products, and it is precisely this that is the main feature of the invention.

It is quite pointless to make any interpolation between the successive samples.

Generally, the sampling frequency 2F will be greater than 2F,,, and we shall have Such a method provides the real-time determination of energy spectral density (power spectra).

As indicated above, existing instruments for the realtime determination of these power spectra are based on time compression followed by narrow-band smoothing.

Such instruments are complex, expensive, and are limited to some tens of kHz on the high-frequency side.

On the other hand, it is an easy matter to obtain a power spectrum from the auto-correlation function of the signal by the Wiener-Kinchine theorem.

- The Wiener-Kinchine theorem states that the energy spectral density of a signal and the auto-correlation function of this signal are Fourier transforms of one another and this may be written as follows where An interspectrum S is also defined, which is the Fourier transform of the inter-correlation function C ,('r) between two signals .1: and y where Such correlators therefore only have to be connected to a Fourier transform generator operating in accordance with the above-described principle to provide a system for the automatic real-time analysis of a spectral density. Such an instrument is much less complex than current spectral density analysers which operate on other principles and the instrument according to the invention also has better performances.

We shall now examine the precautions required for calculating the Fourier transform of a correlation function.

When it is required to obtain the Fourier transform of a correlation function defined between -r,, and +1 two cases must be considered. First case: C(1) is zero when {1] 1 M in this case, it is only necessary to apply the basic definition and the Fourier transform of C(T) gives SQ). Second case: C(r) differs from zero when ]-r[ 1- M this means that the correlation function C(r) is obtained from a correlation function C,(1-) by truncation, C,(*r) being zero in the case of [1" 1- M with 1M 'r M.

C(-r) is therefore C ('r) multiplied by a window function W(-r) i.e.,

where If we calculate the Fourier transform of C(r), there corresponds to the product C(r)-W(1' in the time range, the convolution product C, (1') W (T ):S, (f) 2 TM (sin 2 'n'f'r /2 'rrfr (23) in the frequency range; S(f) is therefore the result of convolution of the true spectrum 8 by the function This convolution will introduce spurious oscillations (or lobes) on SQ). This disadvantage is reduced by multiplying the correlation function by a weighting function. There are three main weighting methods:

a. Von Hanns method (the hanning" method), which comprises multiplying C(r) by 1/2 (1 cos (WT/m);

b. R.W. Hammings method (the hamming" method), which comprises multiplying C(1') by 0.54 0.46 cos (arr/T c. the Fauque-Berthier method, which comprises multiplying C(r) by:

The first two methods are conventional but the third is a recent method and will therefore be briefly detailed below.

Let W('r be the time window (FIG. 1) which multiplies the function (-r) and let Q 0) be the corresponding spectral window (FIG. 2) which convolutes the spectrum when no weighting is applied. This spectral window Q,,(/') is inconvenient, because in introduces side lobes, but on the other hand it has the advantage of being narrow in the frequency range and hence giving a fairly good resolution.

The conventional weighting methods (hanning or hamming) eliminate the side lobes almost completely but substantially double the width of the spectral window and hence halve its height; this greatly reduces the resolution.

The resulting spectral windows (hanning or hamming) are very compressed in relation to Q,,(/).

The attempt must therefore be made in the spectral range to reduce the side lobes of Q,,(/) without excessively reducing the height of the central lobe. For this purpose, Q,,(j) is convoluted by a rectangular window Q, (f), the width of which is equal to the period of the side lobes of Q,,(f), i.e., l/Ti (FIG. 3); corre sponding to this window Q,,(f) we have in the time range (FIG. 4) a window since it is required to convolute Q,,(/) by Q Q) in the frequency range, it is only necessary to obtain the product of W(-r and q,,('r) in the time range, because Q,. (f) QA (fl (TM) I (2 For this Fauque-Berthier weighting, therefore, we shall multiply C(1') by FIG. 5 shows the representative curves P of the case of a weighting of the conventional type (hanning or hamming) P of the case of weighting of the recent type (Fauque-Berthier) and P of the case without weighting as a function off.

To conclude these general remarks, we shall return to Shannons sampling theorem.

Let z(t) be a function and a system which samples said function at the frequency Fe, i.e., which samples the value of the function (1) at times regularly spaced by 9 NH.

The function z(t) then becomes the sampled function z*(t) represented by a series of values ...Z(n/F z (l/F,.), z (0), z l/F,,), .z (rl/F,.) which may be written as follows:

t. G -hw It is known that for a Fourier transform admits i.e., that Assuming that z(t) admits of a Fourier transform Z(f), the Fourier transform of z*(t) which is expressed as F[z*(z)], may be written as equal to the convolution product of the Fourier transform of z(t) and the Fou rier transform of F[z*(t)] is therefore a sum of the functions Z(f Kf Z(f F Z(f), Z(f+ F Z(f+ KL).

We have a sum of functions derived from one another by F translations along the frequency axis.

lf z(t) has a limited frequency spectrum, i.e., if Z(f) is substantially zero for f 2 F these translations will not affect the form of the elements Z(f- Kf provided that Fe is greater than or equal to 2F; there will then be no overlap of the spectra, as shown in FIG. 6, in which f is plotted on the abscissae and F[z* (t)] on the ordinate.

ln these conditions, the spectrum Z,(f) of z*(t) enables the spectrum Z(f) of z(t) to be found; for this purpose it is only necessary to multiply Z (f) by a window function Q(F,,/2) so that Q (Fe/2) O forf F /2 andf F /2 Q (Fe/2) l for F /Z f F /2.

1(1) 2* (l) Fe (sin 1r F mrF, t)

Shannon's sampling theorem shows that if a function (t) has a frequency spectrum limited by the values F,,, F z(t) can be found from samples taken at the frequency F 2F,,.

Returning to the Fourier transform of z(t) which is Z(f), then by definition The Fourier transform of z*(t) is We have just seen that Z(f) can be found by considering Z,(f) between only F /2 and F /2.

The above two expressions are therefore equivalent; in these conditions may be written as follows:

or alternatively but 7 1 n=1 n if 1 i gf c 2 (4-1) If we consider only the values offcontained between F /2 and +F,,/2 (i.e., between and F /2 in fact), we have If f 1/21, then we have formula again llZ After these preliminary remarks, we shall now explain the details of the method according to the invention.

The function 2(1) is assumed to be given in a sampled form, 6 being the sampling interval.

The function z(t) is therefore represented by a series of values ...2 (K9), z (26), z (-6), z (0), 1(9), z (29), z (K9), equally spaced over the taxis, the interval being 6.

These values 0(9) are stored either digitally (e.g. in core or bistable memories) or in analog form (e.g. as capacitor charges).

For calculation of the Fourier transform of z(t), the sampled values of z(t) are finally read out in analog form either by digital-analog decoding of the contents of the memories or stores if they are of the digital type, or by direct read-out thereof if they are of the analog type.

The function z(t) therefore being sampled with the interval 6, it will be defined by N points, N being an integer immediately below 2T/9 l. Since the interval 2T is generally large withvrespect to the interval '9, we may write N 2T/6 l in order to simplify.

The function z(t) being known over an interval of 2T, the definition over the spectrum cannot be greater than l/ZT; we may therefore take f, l/2T; as a result, the lowest frequency of the cosine function will be l/2T f,,. Thus at the end of N points of cos 2 1r l/2T p9, we shall have cos (2 1r l/2T b T) cos 2w We shall therefore produce a period of the function cos 21r/2Tt sampled at N points having the interval 9 (FIG. '70 gives an example for N =41 and n N 1/2 21), i.e., a programmed cosine function.

Taking the products of z(p9) and cos 2 1r (l/2T)p9 and the sum of these products, we have we now make K 2 for the cosine function, then for z(p6) we shall have cos 2 1r l/2T 2p9, and if we take the sum to p of the products z(p9) cos 2 1r l/ZT 2,79 then we have 13 Similarly, by reading out the values of the programmed cosine for adresses in increments of K, we shall have generally and this applies to values of K increasing up to K n l,withn=N+ 1/2 ornl =N- l/2=T/G,and hence n l/2T l/ZO F /2 (Fe being the sampling frequency), and from this we have the value There is no point in calculating R (K/2T) for K n 1 since higher values of K would correspond to spectrum frequencies above F /2; the latter is already greater than or equal to F,,.

This will also give a control, since R, (n l/2T) will have to be zero.

We shall now examine the specific case in which z('r) is a correlation function known between r,,, and +1 We shall distinguish between the following two possible hypotheses:

a. z(r) is an auto-correlation function; it is known that the function z(r) is even: z('r) z(1'); a knowledge of z(*r) in the case Of? is thus sufficient and if we know n points of z(t) for 'r 0, that is equivalent to knowing N 2n 1 points of z(-r) for 1- E O; on this hypothesis, a half-period of the cosine function is programmed over It points.

b. z(1-) is an cross-correlation function; 2(7) and z(1-) are calculated separately:

(for 1' 0, we have n points; )for T 0, we have n 1 points, and we thus (return to the preceding hypothesis.

Thus where this method is applied to correlation functions, itwill only be necessary to program a halfperiod of the cosine at a number of points n equal to the number of known points of the part of the corresponding correlation function,either at 'r 0 or at 'r Referring to FIGS. 8 and 9, it will be apparent that a knowledge of n points of the auto-correlation function is equivalent to a knowledge of (2n 1) points of this function, these figures illustrating the pairs of z(t) and cosine curves linked by auto-correlation.

The cosine function is therefore programmed at n points and the auto-correlation function is processed at n points, the resultant then having to be multiplied by two.

With regard to the cross-correlation function,in the general case in which it is non-zero between r and r it is first calculated at n points from 0 to r and then at n points from O to 1 For calculation of Z(f), the two parts of the crosscorrelation function will be processed successively, and the sum of the two Fourier transforms will be formed counting the products associated with 1 0 just once; FIGS. 10 and 11 show the pairs of z(t) andcos curves linked by inter-correlation, distinction being made between the two cases E 0 and E 0.

In these cases, therefore, the number of points programmed over a half-period of the cosine (at the lowest frequency) will be equal to the number of points of the correlation function taken for r 0 or for r 0.

In the case where the function z(t) is not even, it is also necessary to calculate I, [(K/2T)] 6 E z (p9) sin (Zn/2T) KpG i.e., the sine function (21r/2T) Kpe must be generated.

For this purpose'it is only necessary to read out the programmed values of the cosine function with a quarter-period offset, i.e, start reading out at the sample which has zero as its value (sample No. 10 in FIG. instead of commencing with the sample having 1 as its value (sample No. 0 in FIG. 7a).

The method and the analog read-out means for the programmed values of the cosine and/or sine function having been explained in detail, reference will now be made to FIG. 12 which illustrates a complete device according to the invention for generating a Fourier transform.

This device comprises in combination store unit 1 whereby the values of the sampled function z(p6) can be stored (in digital or analog form reading out circuit 2 for reading out the contents of the storage means 1 in analog form, at least one analog generator 3 for the function cos *rr/T KpG and/or sin w/T KpG, at least one analog multiplier 4, one of the inputs 4a of which receives the output of the reading out circuit 2, while the other input 4b receives the output of the function generator or generators 3, an integrator 5 connected to the output of the multiplier or multipliers 4, said integrator, which advantageously consists of an operational amplifier 6 with a capacitor 7 in parallel, being provided with a normally open switch 8, for rezeroising, and a clock 9 which will be further considered hereinafter with reference to FIG. 13, for synchronising the read out of the contents of the store unit 1 by the circuit 2 and the operation of the generator or generators 3; the required output Z(f) is available at 10.

In the circuit diagram shown in FIG. 12, p' varies from (n l) to +(n l) andfvarie's from l/2(n US to l/29 by increments off l/(n l )6/2 with n N I /2. The Fourier transform of z(t) will then be obtained point by point as an output at 10.

The multiplier 4 is advantageously of the type described in French Pat. No. 1,493,450 filed on Apr. 25, 1966 by the Commissariat a IEnergie Atomique (Inventors: Daniel Berthier and Jacques Max).

It is a multiplier in which a pulse is modulated by the multiplicand as to width and by the multiplier as to amplitude (or vice versa), the resulting pulse area being proportional to the product.

In the embodiment shown in FIG. 13, which also shows some other parts of the complete device: generator 3, clock 9, integrator 5 (with operational amplifier 6, capacitor 7 and rezeroising switch in the form of a field-effect transistor 8a, the gate 11 which receives the rezeroising voltage r through a diode 12). The voltage r for return to zero is produced each time that N products are carried out in multiplier 4. This voltage r can be then obtained by utilizing a divider by N, as for example, element 128 in FIG. 20. The multiplier 4 comprises the following:

A sawtooth generator 13 (e.g. of the bootstrap circuit type) triggered by the clock 9, the clock pulses being fed to the input 40 of the multiplier 4 (i.e., the generator 13).

A comparator 14 (comprising a differential amplifier and an inverter) which compares the amplitude of the sawtooth pulses of the generator 13 with the cosine and/or sine function of 2 1r Kfl, p9 or 1r/T KpG from the generator 3, and delivering two opposite signals Q and 6, Q being the resultant of the comparison in the amplifier stage and Q being the output of the inverter stage (the input of which is connected to the output of the amplifier), these signals Q and Q for example, having the curve shown in FIG. 3 (signals X(t) and YU) of the aforesaid patent.

A pair of field-effect transistors l5, 16 which alternately conduct under the control of Q and 6, the transistor 16 being fed directly by the output of the readout means 2, while the transistor 15 is fed by said means 2 via an inverter 17 (l X multiplier), the transistor 15 thus delivering z(p9) to the integrator 5 under the control of Q, while transistor 16 delivers z(p9) to the integrator 5 under the control of Q.

The sum of the N products corresponding to a value of K is finally obtained by the integrator 5 which is rezeroised by a voltage r after each calculation of a point of Z(f).

Thus N products have to be evaluated and summated for one value of Z0). To obtain 11 points of Z(f), n N products must be evaluated (in the case of a correlation function defined at n points, then n products must be evaluated).

We shall now discuss the cosine or sine generator which has to generate the signal (KHZ cos 21rKf p06 (tp9) for integer K varying from 1 to n l and integer p varying from The principle of this sampled function generator has been described above with reference to FIG. 7. An embodiment of such a generator 3 is illustrated in FIGS. 14 and 15. The operation may be divided up into two parts: firstly, storage of the voltages corresponding to n N 1/2 values of the cosine for values of the variable regularly spaced between 0 and 1r; secondly, the read-out programme of these various cosine values.

a. Storage of the values of the cosine (or sine) function.

The successive values of the cosine function are represented by voltages V V V (which are in fact voltages corresponding to n l values of the cosine distributed equally between 0 and 180) and are read out in sequence by field-effect transistors (e.g. T T T,, (FIG. 14). The system then behaves as an electronic switch having 11 inputs and a common output S.

If the transistor T conducts, S gives the voltage V while similarly if T, is conductive, the voltage V, is obtained at S, and so on. These field-effect transistors are controlled by diode matrices which decode the units," tens," hundreds" states of the read-out address.

b. Read-out programme in the case where it is desired to obtain the Fourier transform of a correlation function delivered by a correlator.

We have seen that in such cases there were n programmed points of the cosine function for n points of the correlation function where 1' is greater than 0 or is less than 0.

The program is obtained (FIG. 15) by means of a binary divider 18 which divides by n, a decimal binary counter 19, AND circuits 20 (which receives the out-puts: units U tens D and hundreds C from the counter 19 and the parallel transfer order from the clock 9 via the line 21) and a parallel binary accumulator 22.

The three outputs U D C,, of the accumulator 22 lead to a decoding matrix 27 which allows O, l, 2 199 to be obtained from U,,, D,,, C and the field-effect transistors T T etc. in FIG. 14 to be controlled.

The logic states U D C represent the value of K for the units, tens and hundreds.

K thus increases all the n synchronisation pulses by one unit, so that K remains constant during n pulses. The AND circuits 20 enable K to be added to the contents of the binary accumulator on each synchronisation pulse. Thus after each pulse the address (U D C,,) of the accumulator is increased by K.

Let us assume an initial state:

K=l U =1 D,,=0 C =O andU =0 D =0 C,,=0 V will be obtained at S;

after one pulse:

K=l u =1 D =0 C =0 U, 1 D, 0 C, 0

V will be obtained at S;

after two pulses:

K=l U -l D, 0 C O U D 0 C, 0

V will be obtained at S;

and so on until the (n l)" pulse; at the n'" pulse we shall have:

K=2 u, =2 =0 c, =0 u, 0 0., 32 0 c, 0

V will again be obtained at S;

at the (n l)" pulse we shall have:

K=2 UK=2 DK.=0 CK=0 U,, 2 D,I 0 C 0 ing will be obtained at S:

V V V V V,, V,, V,, V and so on,

and finally& for the pulses between (n 2)n and (n l)n 1, we have K N-l and the following will be obtained successively at S:

Of course the device may have ancillary devices.

More particularly, when the signal 1(2) is not zero in the case of the limits -T and T, the Fourier transform of z(t) has oscillations as indicated hereinbefore.

To reduce these spurious oscillations, the samples of z(t) may be weighted by a time function of the form sin 9p/6p. This result is obtained by using a variable-gain amplifier. The gain of this amplifier is controlled by the z(9p) read-out synchronisation pulses. The variable gain is obtained by looping an operational amplifier by various resistors whose value in the case of the sample of the order p is proportional to sin Op/Gp, with integer p ranging between and T/G.

The performances of the apparatus are as follows:

time for one multiplication: l microsecond;

- time for calculating one point of the Fourier transform, the function z(t) being known by 200 points; 200 microseconds.

time for calculating the Fourier transform for 200 points for the spectrum: 200 X 200 microseconds 40 ms.

thus to calculate the real part and the imaginary part of the Fourier transform the time required is 80 ms.

If the function z(t) is known by N points between T and +T, the half-period of the cosine being programmed between 0 and T at n points (n N 1/2), it is easy to generate a full period of the cosine to cover the interval T, +T by a modification of the address programme.

It will be apparent that the circuit shown in FIG. 14 has two disadvantages:

a. n voltages corresponding to n samples of the cosine uniformly spaced between 0 and armust be displayed; this means that n potentiometers are required and n 100 or 200.

b. n field-effect transistors T are required to read out these n samples in sequence.

In a variant, instead of storing n samples V V V and so on, and reading out these n samples in sequence, it is possible to use an amplifier whose gain varies in accordance with the addresses 0, 1,

The variable gain may be obtained with the circuit diagram shown in FIG. 16, in which reference 23 de-' notes an amplifier, 24 a resistor equal to R/x and 25 a resistor equal to R/ 100; the gain is therefore 1G] x/lOO.

The input resistance R/x must therefore be varied to vary the gain of the looped amplifier in accordance with the addresses 0, l, 2 and so on. R/x is obtained by the parallel connection of a network of resistors 24 having the values R, R/2, R/4, R/2, R/lO, R/ZO, R/40, R/20, R/IOO. With a resistance network of this type, and by means of combinations, it is possible to obtain integer values of x between 0 and 199.

The dynamic over x is limited only by the accuracy of the resistors. The resistor R/lOO connected as a negative feedback resistor to the amplifier acts as a gain limiter.

FIG. 17 shows an example for x 76.

FIG. 18 shows the system illustrated in FIGS. 16 and 17, i.e., a system adapted to be substituted for that shown in FIG. 14 in the complete apparatus. In this Figure, the resistors 24 are switched by field-effect transistors 26 which are either cut off (state 0) or conductive (state 1 Thus 76 corresponds to the logic word 01110110 illustrated in FIGS. 17 and 18. The same applies to the other values as shown in the following Table:

R/20 R/40 R/20 R R/Z R/4 R/ 2 R x 0 l l l 0 l l 0 76 0 l l l O l l l 77 O l l l l 0 0 0 78 For each address 1 0, 1, 2 etc. there is a correspondy logic word, the analog equivalent of which would be V V V etc. is made to correspond to each address i 0, 1, 2, etc. In this application, these voltages correspond to the samples of a cosine between 0 and 11'.

Any other law could be selected to produce a generator of any function, with a voltage V, corresponding to each address i.

In the case of the Fourier transform generator, this solution is very advantageous, because using eight resistors it is possible to generate as many samples V as desired with an accuracy of 1 percent. The accuracy would be 0.1 percent using 12 resistors.

In the case of a 200-point Fourier transform generator, the solution of FIG. 14 would require 200 potentiometers and 200 field-effect transistors, while the solution shown in FIG. 14 would require only 12 resistors and 12 field-effect transistors.

The use of any of the above embodiment will thus provide a system for generating the Fourier transform of a function, and the operation of such a system is sufficiently clear from the foregoing for any further remarks to be superfluous, and such a system has numerous advantages over existing systems of the type in question, inter alia, as follows:

Firstly, it is simpler, more flexible and provides better performance than the prior-art systems, particularly when coupled to a real-time automatic correlator, to form a spectral density analyser.

It has an extensive band width.

It can operate in real time.

It is highly reliable.

The speed of calculation is very high.

The modified embodiments, illustrated in FIGS.

19-23 operate digitally, but the principle of operation remains similar to that described above. However, some general considerations may be useful to produce a digital sample R (K/2T) the following criteria must be met:

a. N samples of the function (2) must be made available in digital form (N being a predetermined integer);

b. the corresponding N samples of the cosine function must be made available;

c. the N elementary products of sample pairs must be formed, and

d. the N partial products must be added (integration operation).

Since the device of the invention will often be used to determine the Fourier transform of a function supplied as a round number of samples (50, 100, 150, 200 by a correlator, the fundamental frequency chosen is likely to be not l/2T l/NG but the nextlowest value 1/(2T 9). 

1. A system for generating the Fourier coefficients of a real function z(t) which is generated in the form of N samples equally spaced by the interval Theta from t -T to t T in the form z(p Theta ) where p is an integer such that - T/ Theta < p < T/ Theta comprising a store unit (1) for storing N samples equally spaced by the interval Theta , of the function cos pi t/T from t -T to t T in the form cos pi p Theta /T; a reader (2) connected to said store for reading out every Kth samples of the functions cos pi t/T, K being an integer increasing from 1 inclusive to T/ Theta inclusive, said reader and said store unit forming a further generator (3) of samples cos ( pi Kp Theta /T); a multiplier (4) one of the inputs (4a) of which is connected to said generator of samples z(p Theta ) while the other of the inputs (4b) is connected to said generator (3) of samples cos ( pi Kp Theta /T); said multiplier selectively forming the product of z(p Theta ) and cos ( pi Kp Theta /T); an integrator (5) connected to said multiplier for summation of successive products each of the sums over p for which K is constant representing the Fourier coefficient associated with the frequency K/2T; a switch (8) for rezeroizing said integrator (5) and a clock (9) for actuating said reader, said further generator, said multiplier and said switch.
 2. A system according to claim 1, wherein the multiplier provides double amplitude and width modulation.
 3. A system according to claim 1, wherein the integrater is an operational amplifier with a parallel connection of a capacitor and an electronic switch for rezeroising.
 4. A system according to claim 1, wherein the function generator of sample Z(p Theta ) comprises a series of n field effect transistors, in parallel, said transistors being switched by units, tens, and hundreds signals, and delivering to a common output n voltages V0, V1 . . . Vn 1 corresponding to (n -1) cosine values evenly distributed between 0* and 180* and a divider which divides by (n-1) and which is fed by the synchronisation clock, a decimal counter connected to the output of said divider and delivering units, tens and hundreds pulses, three ''''AND'''' gates in parallel, their first input receiving the units, tens and hundreds pulses respectively from the counter, while their second input is connected to the synchronisation clock, and a parallel triple accumulator receiving the outputs of the three ''''AND'''' gates and delivering the accumulated units, tens and hundreds signals, the output of said dividers actuating said rezeroing switch.
 5. A system according to claim 1, wherein the function generator comprises in series a cirCuit comprising in parallel a plurality of field-effect transistors, and resistors of predetermined values, said circuit receiving a reference voltage, and an amplifier shunted by a resistor having a predetermined value, said values of the resistor being selected so that the gain of the series system consisting of the parallel circuit and shunted amplifier increases by (n-1) successive increments in accordance with a cosine law and further includes a divider which divides by (n-1) and which is fed by the synchronisation clock, a decimal counter connected to the output of said divider and delivering units, tens and hundreds pulses, three ''''AND'''' gates in parallel, their first input receiving the units, tens and hundreds pulses respectively from the counter, while their second input is connected to the synchronisation clock, and a parallel triple accumulator receiving the outputs of the three ''''AND'''' gates and delivering the accumulated units, tens and hundreds signals.
 6. A system for generating the Fourier coefficients of the real function Z(t) which is generated by a digital generator (110) in the form of N digital samples equally spaced by the interval Theta from t -T to t T in the form Z(p Theta ) where p is an integer such that -T/ Theta < p < +/ Theta comprising a digital store unit (120) for storing N digital samples equally spaced by the interval Theta , of the function cos pi t/T from t -T to t T in the form cos pi t Theta /T; a reader connected to said digital store (120) for reading every Kth sample of the function cos pi t/T, K increasing from 1 inclusive to T Theta inclusive, said reader and said digital store unit (120) forming a further generator (112) of samples cos ( pi Kt Theta /T); a digital multiplier (114) one of the inputs (A) of which is connected to said generator (110) of samples Z(p Theta ), while the other of the inputs (B) is connected to said generator (112) of samples cos ( pi Kp Theta /T) said digital multiplier (112) selectively forming the product of Z(t Theta ) and cos ( pi Kp Theta /T); an integrator (116) connected to said multiplier (114) for summation of successive products, each of the sums over p for which K is constant being the Fourier coefficient associated with the frequency K/2T and a clock (118) for actuating said reader, said generators, said multiplier and said integrator.
 7. A system as described in claim 6 for generating the Fourier coefficients of a real function Z(t), said digital generator (110) giving the function Z(t) including a digital store unit (152) for storing the digital values of the sampled function Z(p Theta ), a reader connected to the store unit (152) for reading out the contents of the store unit (152) in digital form, said clock (118) being connected to said reader connected to said digital store unit (152) and to said reader connected to said store unit (120) for synchronising the read out of the contents of the store units.
 8. A system according to claim 7, wherein the first address generator includes a counter with provision for displaying K, an accumulator whose output defines the store address, and an adder coupled with the counter and accumulator, the adder adding the value K to the accumulator contents whenever a synchronising clock transmits a pulse to the counter and accumulator. 